package cz.fit.dpo.task1;

import cz.fit.dpo.task1.Controller.gameStates;
import cz.fit.dpo.task1.commands.ICommand;
import cz.fit.dpo.task1.exceptions.EndOfGameException;
import cz.fit.dpo.task1.exceptions.GamePassedException;

public interface ICommandProvider {

	public ICommand getNextCommand() throws EndOfGameException, GamePassedException;

	public void printGameState (Game game);

	public void printInputResult(String result);

	public void printInformation(String info);

	public void setController(Controller controller);

	public void printAvailableGames();

	public void printStartOfGame(Game game);

	public void printEndOfGame( gameStates gameState );

	public World getWorld() throws EndOfGameException;
}
